﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Practico2.Business;
using Practico2.DataTypes;
using Practico2.DataAccess;

namespace Practico2.Business
{
    public class UsuariosWebService
    {

        /// <summary>
        /// Crea un nuevo usuario con los datos indicados
        /// </summary>
        /// <param name="usuario"></param>
        /// <returns>El identificador del usuario recien creado</returns>
        public static Int32 nuevoUsuario(UsuarioWeb usuario)
        {
            try
            {

                return 0;
            }
            catch (Exception ex)
            {
                // loggear en algun ladooo
                throw ex;
            }

        }

        /// <summary>
        /// Obtiene el usuario cuyo id es idUsuario o null si no existe
        /// </summary>
        /// <param name="idUsuario"></param>
        /// <returns></returns>
        public UsuarioWeb obtenerUsuario(Int32 idUsuario)
        {
            return null;
        }

        /// <summary>
        /// Obtiene la lista completa de usuarios del sistema
        /// </summary>
        /// <returns></returns>
        public List<UsuarioWeb> obtenerUsuarios()
        {
            return new List<UsuarioWeb>();
        }


        /// <summary>
        /// Valida si el nombre de usuario y la contraseña son correctas
        /// </summary>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <returns>true si el par usuario&password es correcto, false en caso contrario</returns>
        public static  Boolean CredencialesValidas(string username, string password)
        {
            DTUsuarioWeb uw = UsuarioWebDataAccess.GetUsuarioWebByName(username);

            if (uw != null)
            {
                return uw.ContraseniaUsuarioWeb == password;
            }
            else 
            {
                return false;
            }
        }

        public static void IngresarUsuarioWeb(DTUsuarioWeb usuarioWeb)
        {
            UsuarioWebDataAccess.InsertUsuarioWeb(usuarioWeb);
        }

        public static void EliminarUsuarioWeb(int idUsuario)
        {
            UsuarioWebDataAccess.DeleteUsuarioWeb(idUsuario);
        }
    }
}
